Security-JAWS 第34回レポート #secjaws #secjaws34 #jawsug
こんにちは、臼田です。
Security JAWS 第34回が開催されましたのでレポート致します。
Security-JAWS【第34回】 勉強会 2024年8月19日(月) - connpass
ちなみに今回から、Connpassを利用しています。今後はConnpass中心となりますので、ぜひSecurity-JAWSのページからメンバー登録いただけると助かります。
動画
レポート
Session1: マルチクラウド環境で3年間CSPMをやってきた Japan Digital Design株式会社 Technology & Development Div. 唐沢勇輔さん
- 自己紹介
- 2019年にJDDに入社してSecurity Teamを立ち上げた
- 2021年にエンジニアリング部門のHeadに就任
- Japan Degital Design株式会社
- 三菱UFJフィナンシャルグループのDX活動を行う
- MUFGやMUFGの困り事を解決していく
- IT以外にも各分野のプロフェッショナルが在籍している
- データ分析基盤をAWS環境に保有している
- AWS / Google Cloud / Azureを利用している
- JDDにおけるクラウドセキュリティ全体像
- 相談報告しやすい環境を作ったりいろんな取り組みをしている
- 環境の払い出しやガードレール構築はInfraチームが担当
- 実際の環境内の構築はプロジェクトにアサインされたメンバーが実施
- アーキテクチャのレビューやセキュリティ監視をSecurityチームが担当
- 基本的にはプロジェクトが主たる責任を持つ
- 脆弱性の管理もプロジェクトにお願いしている
- マネージドサービスを多用して、自動で対応されるところを目指している
- Prisma Cloud選定経緯
- 2020年にそろそろCSPMを使おうと検討し始めた
- 最初はR&Dでデータ分析基盤が中心だったが、この頃から他の仕組みも作り始めていた
- re:Inforce 2019でもいろんなサードパーティも充実してきていた印象
- 2020年6月の製品比較
- Turbot
- Prisma Cloud
- Cloud Custodian
- 製品自体のコストはCloud CustodianがOSSなのでやすい
- 代わりにインフラコストが必要
- 導入工数も高そう
- 設計思想の違いも感じた
- 2020年7月にPrismaCloudにした
- 検討に時間をかけるよりまずやってみる
- AWS/Google Cloud/Azureが対象だった
- クラウド環境の設定に問題がないかを確認したかった
- 問題が合った場合の修正を強制するのはやらないと判断した
- いきなり変更して問題が出る可能性もある
- リリース前に構成に問題ないかチェックしている
- JDDの規模なら発見してからの修正は早い
- ビジネスプランで十分で相対的に安い
- AWSだけならSecurity Hubで十分だがアカウンタビリティを考えるとサードパーティによる監査に価値を感じた
- 実際どう運用しているか
- AWSはプロダクション環境のみ
- PoCリソースを課金対象にしないようにした
- Google CloudはOrganization全体を連携している
- 連携が楽でPoCリソースがほとんど無いから
- AzureはまだPending
- 何をいつ見ているか
- CIS BenchmarkベースでAWS /Google Cloudをチェック
- 気が向いたらダッシュボードを眺めたりしているが基本は平和
- AWSはプロダクション環境のみ
- 3年間やってみて
- 良かった点
- セキュリティ事故はゼロ
- 誤検知に類する物がほとんどだがノイズにはなっていない
- CIS2 -> 3にアップデートするときもルールセットが用意されているので簡単
- 合理的な課金
- 今後の課題
- そろそろAzureも
- CIS Benchmarkの検出項目の重要度付けは見直してもいいかも
- 良かった点
感想
実際に検討した事例はとてもためになりますね。CSPMも結構コストの取り方がいろいろあったりするので合理的な課金なのは嬉しいところです。CSPMやっていきまっしょい!
Session2: S3へ保管されるコンテンツのセキュリティ対策 ~ GuardDuty Malware Protection for S3編 ~ 東急株式会社 デジタルプラットフォーム 中川皓紘さん
- 自己紹介
- インフラエンジニアをしている
- AWS12冠
- Q SKIPとは
- 東急電鉄の企画乗車券をスマホで買ってQRコードを表示して乗車できるデジタルチケットサービス
- いつでもどこでも買える
- スマートフォンが乗車券
- お得な特典がセットになったチケットもある
- TOKYU ID連携でパスキー対応している
- GuardDuty Malware Protection for S3とは
- 最近リリースされた
- S3にマルウェアスキャンできる
- スキャンしたらタグ付けできる
- GuardDuty Malware Protection for S3でやりたかったこと
- Q SKIPでCMSを運用している
- 画像などコンテンツを扱っている
- ユーザーがコンテンツをアップロードしたときにスキャンしたい
- やりたいこと
- 基本は画像のチェック
- CMSに導入
- 悪意あるファイルを検出して拡散防止したい
- 料金
- 従量課金なのでよっぽど大量にスキャンしなければ大丈夫そう
- 料金ページ
- 検証
- スキャンタイミング
- 新規の投稿や更新があったとき
- 暗号化されたバケットに対応していた
- Security HubとGuardDutyを連携している場合追加の通知設定はいらなかった
- タグがどう付与されるか
- 結果に応じたタグ付け
- マルウェアを検出した場合の挙動
- 「THREATS_DOUND」のタグが付く
- タグベースでのアクセスコントロール
- バケットポリシーでDenyを記述する
- スキャンタイミング
- 導入
- IAM Role
- KMSの権限も必要(利用する場合)
- GUI
- ポチポチやっていけばよくて設定は簡単
- IaC
- CloudFormationでも簡単
- IAM Role
- 今後の活用
- 検出したときにどうしたいのか考える
- 自動隔離
- マルウェア、ウイルスの特定
- フォレンジック調査
- コンセプト
- EventBridge経由でLambdaで隔離用S3に上げる
- 情シスへの通知
- アップロード記録の調査
- 検出したときにどうしたいのか考える
- この機能がほしい
- すでに保存されているデータもスキャンしてほしい
- GUIで複数バケットにまとめて設定したい
感想
GuardDuty Malware Protection for S3はよいですね。ガンガン使いましょう!
Session3: AWS re:Inforce 2024 もう一つの re:Cap アマゾン ウェブ サービス ジャパン 勝原 達也さん、中島 章博さん
- re:Inforceとは
- AWSのセキュリティにフォーカスした学習型カンファレンス
- AWS本家のre:Capは実施済み
- 今回は本家でできなかった内容をやっていく
- 会場とフィラデルフィア
- 東海岸でワシントンDCの近く
- 昨年はアナハイムだった
- 映画のロッキーの銅像もある
- 会場は幕張メッセの2倍くらい
- 廊下も広い
- キーノートの会場やゲームの会場などいろいろある
- 終わったら夜はパーティしている
- ジャパンツアーもやった
- お昼を一緒に食べたり
- CISOとの対話が合ったりした
- リーダーセッションについて
- SEC201-INT: 数学的に証明可能なセキュア認可
- 自動推論について
- IAMの認可エンジンを今年はじめにリリースして、自動推論を高速に動かして証明可能なセキュリティを実現
- IAMポリシーに書かれていないことも含めて自動推論で評価している
- 自動推論エンジンはCEDARやVerified Permissionsに活用されている
- IAM Access Analyzerなどにも活用されている
- SEC203-INT: 生成AI 技術革新をセキュアに促進
- 新しい分野に好奇心を持って取り組むことがいい
- Bloombergの取り組みを強調した
- AIの評価についても紹介
- Arcee AIの紹介
- 小規模言語モデル(SLM)を作っている
- 推論の制度を上げたりコストを下げたりしている
- 生成AIをAWSがどう使っているか
- インシデントレスポンダーも利用している
- プレイブックや情報収集に活用
- トリアージや意思決定が高速化した
- 将来がどうなるかデータサイエンティストの視点で紹介
- LLMは面白いがSLMなども普及するかもね
- SEC204-INT: 暗号技術研究の探求
- 3人は最先端の暗号技術を実用化している
- 最新の技術をどうやってサービスに乗せるか
- 量子暗号についても話があった
- SEC201-INT: 数学的に証明可能なセキュア認可
- 日本の活躍
- キーノートでSecurity Lakeの利用者やパートナー紹介
- Sony Musicさんも紹介された
- Security-JAWSのメンバーも登壇
- Booking.comさんのGuardDutyの話でClassmethodが紹介された
- CSC様がブースを出していた
- EXPO
- 前日も重機が走っていた
- セキュリティトレンドのショーケースでいろんな会社の情報を得られた
- Check PointやCisco、Cloud Storage Securityなどはジャパンツアーで翻訳付きでEXPOツアーをした
- HashiCorpはゼロトラストとアイデンティティについて
- Orca Securityはエージェントレスですべてを可視化する
- Scribe SecurityはSDLC全体においてサプライチェーンのセキュリティを向上する
- SurePath AIは生成AI利用にセキュリティガバナンスを導入
- Sysdigはクラウド環境にセキュリティとオブザーバアビリティを導入
- SurePath AIをピックアップ
- 生成AI利用が企業ポリシーに準拠することを保証するプラットフォームを展開
- ユーザーの生成AI利用をインター背tぷと氏キビデータやユーザーの権限などを元にセキュリティガバナンスを実現
- レスポンスをマスクしたり、アクティビティを可視化したり
- AWSニューヨークオフィス
- ツアーの一環でオフィスを見学したり社員との交流会があった
- 現地で活躍する日本人と交流した
- AWS Builder Studioを紹介
- いろんなAWSのテクノロジーを体験してプロトタイピングを進めていくためのスタジオ
- ニューヨーク、メルボルン、サンタクララ(自動運転関係)にある
- ホログラムディスプレイ
- ロボットアームとカメラを使ったコーヒーマシン
- デジタルツイン
- バーチャルフルフィルメントセンター
- VRゴーグルで体験
- テクノロジーとアートの融合として自動サンドアート
- 生成AIでクリエイティブを加速
- バーチャルTry-On
- バーチャルで服飾系をおためし
- さいごに
- re:Inforce 2025は情報が出ている
- 2025.06.16-18にフィラデルフィア
- 次はre:Inforceで会いましょう
感想
re:Inforce楽しそうじゃないですか?私はめちゃくちゃ楽しかったです!行きたい人は今から準備しておきましょう!
Session4: IAM Access Analyzer カスタムポリシーチェック機能 Dive Deep アマゾンウェブサービスジャパン合同会社 パブリックセクター 押川 令さん
- 自己紹介
- パブリックセクター技術統括本部所属
- 自治体の方に技術を提供している
- 背景
- AWSは強固なゼロトラストアーキテクチャに関するソリューションを提供している
- Amazon Verified Permissionsなど
- 強力なアイデンティティアクセスが必要で最小権限が重要となる
- 最小権限を徹底したいがどうすればいいか
- 権限を設定する
- 使いながら検証する
- 問題を改善する
- これを繰り返す
- このサイクルにIAM Access Analyzerを用いる
- 設定では正しい権限かを確認する
- ここでカスタムポリシーチェックを活用できる
- 検証では意図したものか確認する
- 外部アクセスの検出を使う
- 使われない権限は狭める
- 未使用のアクセスの検出を使う
- 今回のre:Inforceではカスタムポリシーチェックと未使用のアクセスについてアップデートが合った
- 設定では正しい権限かを確認する
- 自動推論が強化されている
- 自動化された推論とはセキュリティの仕組みを検証しそして保証すること
- Cedarでも使われている
- Amazon S3やInspectorでも自動推論を活用している
- IAM Access Analyzerポリシーチェック
- まずはただのポリシーチェックから
- 単純なパターンのポリシーチェック
- NotResourceやアスタリスクの活用などを検出していた
- 意図しない権限かを確認したり、独自の基準と照らし合わせることができなかった
- IAM Access Analyzerカスタムポリシーチェック
- 自動推論を利用して数学的証明に裏付けされた最高レベルのチェック
- チェック結果はPASS/FAILのどちらか
- このチェックによりIAMポリシーのレビューを合理化できる
- PASSしたら自動で承認するなど
- CI/CDに統合したりIDEに統合したりできる
- 検出すること
- 参照ポリシーに対するチェック
- 更新したポリシーで新しいアクセス権限が付与されるかどうかを参照ポリシーと比較して確認できる
- エディタ上でもチェックできる
- 変更した結果新しいアクセスが許可されたかどうか判定できる
- 指定したアクション・リソースへのアクセス許可をチェック
- 例えば特定のCloudTrail証跡へのアクセス権限がないか確認する
- ポリシーの中に許可があればFAILとなる
- パブリックアクセスの許可をチェック
- リソースポリシーにパブリックアクアセスの有無をチェックできる
- 特にS3とかで使っていく
- 参照ポリシーに対するチェック
- カスタムポリシーチェックの仕組み
- Zelkovaという自動推論エンジンが動いている
- SMTソルバを用いている
- Config / TA / Macie / GuardDutyでも利用している
- ポリシーを数式にして、比較対象の数式と比較して数学問題として解決される
- Zelkovaという自動推論エンジンが動いている
- カスタムポリシーチェックのCI/CDへの組み込み例
- CloudFormation、CDK、TerraformなどのIaCでCI/CDに組み込むと、作成するIAMポリシーが条件を満たしているかどうかをテスト時にチェックできる
- 例えばGitHub Actionsでvalidationに使う
- デモ
- 基準となるポリシーのjsonを用意しておく
- PRではポリシーが緩められていたため、テストで失敗した
- 推奨事項として修正すべき内容がレスポンスに含まれている
- CloudFormation、CDK、TerraformなどのIaCでCI/CDに組み込むと、作成するIAMポリシーが条件を満たしているかどうかをテスト時にチェックできる
- 料金・その他参考情報
- 料金はAPI呼び出しあたり0.0020USD
- cfn-policy-validator
- CFnテンプレートからカスタムポリシーチェックが可能になる
感想
IAM Access Analyzerのカスタムポリシーは自動化に組み込んで活用できるのでよいですね。ぜひ使っていきましょう!
Session5: Serverless applicationとセキュリティ ~開発者にこそ知って欲しい、Amazon S3編 ~ 株式会社 Flatt Security プロフェッショナルサービス事業部 Norihide Saito / Azaraさん
- 自己紹介
- Webアプリケーションやパブリッククラウドを対象としたプロフェッショナルサービス業務に従事
- Security-JAWSの登壇は3回目
- 4年前に登壇した内容の続きみたいなもの
- 今回の参考としている記事
- 前提の共有
- おさらい - 責任共有モデル
- S3はマネージドサービス
- マネージドサービスで考えること
- マネージドサービスの設定値
- データ
- アプリケーション側とのコンテキスト
- 利用者が見るべき部分は少なくなったはずだけど項目はいろいろある
- 2つの考えること
- 設定値やサービスで対応可能な範囲
- 実装やコンテキストに依存する範囲
- サービスや設定値で担保できない
- 今回はアプリケーション側の話
- S3へのアップロード方法
- Server Side Upload for SDK
- サーバー側のコードからSDKを利用する
- Client Side Upload for Pre Signed URL
- サーバーがPre Signed URLを発行してクライアントに渡す
- リクエストや署名を確認していく
- Client Side Upload for POST Policy
- 今回は前者2つ
- Server Side Upload for SDK
- おさらい - 責任共有モデル
- 気にすべきMetadataと脆弱性について
- Objectストレージとは
- オブジェクトにMetadataが含まれる
- 付与される情報
- アップロード時間やCache-Controlの値など
- HTTPのデータに含まれるものがある
- 気にすべきもの
- Content-Type
- XSSにつながる
- Conttent-Typeを任意の値に設定できる場合、HTMLとして解釈させてXSSできる
- S3からファイルを取得した際にHTMLとして取得させ、スクリプトを動かす
- Content-Disposition
- Reflectiond File Downloadにつながる
- ダウンロードして実行するところはハードルがあるがマルウェアの配布などができてしまう
- x-amz-storege-class
- Storage Classに起因するEDoSにつながる
- 巨大なファイルをGlacierに指定してアップロードしたりすると必要以上に課金される
- x-amz-website-redirect-locaiton
- 今回は割愛
- Content-Type
- Objectストレージとは
- 実装のミスと対策
- Case 1 File Upload時の署名し忘れ
- getSignedURLの設定について
- Setの中でContent-Typeが指定されていなかったりする場合にクライアントの発行するリクエストでメタデータが設定されてしまう
- getSignedURLの設定について
- Case 2 File Upload時の検証漏れ
- PutObjectCommandで利用される値が検証されていない
- クライアントのContent-Typeなどがそのまま使われると悪用される
- Case 3 File Upload時の検証不備
- 特定の検証時に意図しない方法で突破される
- Case 1 File Upload時の署名し忘れ
- 対策
- 署名付きURLを用いる場合Metadataをできる限り指定して生成する
- X-Content-Type-Optionによる対策
- CloudFrontを利用する場合などはこれが使える
- Validation時の検証における対策
- 完全一致で検証を行う
- ファイルの配信を行うドメインやオリジンを分離する
- 親ドメインを含めてすべて分離するのはなかなか難しい
- S3の場合S3のオリジンから直接配信するのも一つの手
- まとめ
- マネージドサービスにおける開発者が気にすべきセキュリティ観点
- サービス自体の設定値や設定ミスだけでなくアップロードにおいても設定ミスを気にする必要がある
- 気にすべきMetadataと脆弱性について
- S3の特性を理解してサービスに組み込んでいく必要がある
- マネージドサービスにおける開発者が気にすべきセキュリティ観点
- 今回の内容を題材にしたワークショップを開催予定
- Connpassで募集されます
感想
S3のMetadataに着目した攻撃手法はなかなか知られていないと思うので参考にしたいですね。ワークショップも是非参加してください!
Session6: [クラウドZoom相談] 当日のslido & connpassで受付けた質問に回答する枠 Security-JAWS運営メンバー
-
- 「AWSで始めるクラウドセキュリティ」は全人類読もう
- 情報セキュリティはすべてのIT技術の基礎を理解する必要があるので、セキュリティの前にそれぞれの技術要素の基礎をしっかり押さえましょう
- ISMSは非常によくできているのでこれを学習して回すと勉強になる
- セキュリティ知識分野(SecBoK)人材スキルマップを見ると参考になるかも
- セキュリティは各分野の基礎が必要でそれを学んでいく必要がある
さいごに
今回もてんこ盛りでしたねー!re:Inforceではいいサービスがいっぱい出たので活用していきましょう!ワークショップもあるので乞うご期待。